package bb.lanxing.lib.devices.bici;

import bb.lanxing.lib.devices.api.ConnectionListener;
import bb.lanxing.lib.devices.api.SmartDevice;

public interface BiciController {
    int BICI_FAILURE = 1;
    int BICI_SUCCESS = 0;
    int ERROR_TIMEOUT = 2;


    interface BiciListener extends ConnectionListener {
        void onCmdStatus(int i, int i2);

        void onGetFile(String str);

        void onPackage(int i, byte[] bArr);

        void onProgressUpdate(int i, int i2);
    }

    void deleteFile(String str);

    void disableAlert();

    void disableAutoFinish();

    void enableAlert();

    void enableAutoFinish();

    SmartDevice getDevice();

    void getFile(String str);

    void getFileList();

    void getStatus();

    boolean isSporting();

    void lock();

    void registerBiciListener(BiciListener biciListener);

    void rename(String str);

    void reset();

    void send(byte[] bArr);

    void sendInfoSettings(int i, int i2, int i3);

    void sendLightMode(int i);

    void sendPhoneNum(String str);

    void sendTimeSetting(long j);

    void stopWorkout();

    void unbind();

    void unlock();

    void unregisterBiciListener(BiciListener biciListener);

    void upgrade(String str);
}
